package utils

import (
	"fmt"

	"gopkg.in/ini.v1"
)

var (
	AppMode  string
	HttpPort string
	JwtKey   string

	Db         string
	DbHost     string
	DbPort     string
	DbUser     string
	DbPassWord string
	DbName     string

	// config/local.config.ini 定义私密配置
	AppID        string
	Bucket       string
	Region       string
	COSSecretID  string
	COSSecretKEY string
)

func init() {
	// 请在config目录下新建local.config.ini文件 配置腾讯云对象存储AppID和密钥等私密配置
	file, err := ini.LooseLoad("config/config.ini", "config/local.config.ini")
	if err != nil {
		fmt.Println("配置文件读取错误,请检查文件路径", err)
	}
	LoadServer(file)
	LoadData(file)
	LoadCOS(file)
}

// LoadServer 载入服务参数
func LoadServer(file *ini.File) {
	AppMode = file.Section("server").Key("AppMode").MustString("debug")
	HttpPort = file.Section("server").Key("HttpPort").MustString(":8000")
	JwtKey = file.Section("server").Key("JwtKey").MustString("kwmklvcyguertojity")
}

// LoadData 载入数据库参数
func LoadData(file *ini.File) {
	Db = file.Section("database").Key("Db").MustString("mysql")
	DbHost = file.Section("database").Key("DbHost").MustString("localhost")
	DbPort = file.Section("database").Key("DbPort").MustString("3306")
	DbUser = file.Section("database").Key("DbUser").MustString("ginblog")
	DbPassWord = file.Section("database").Key("DbPassWord").MustString("admin123")
	DbName = file.Section("database").Key("DbName").MustString("ginblog")

}

// LoadCOS Value参数
func LoadCOS(file *ini.File) {
	AppID = file.Section("COS").Key("AppID").String()
	Bucket = file.Section("COS").Key("Bucket").String()
	Region = file.Section("COS").Key("Region").String()
	COSSecretID = file.Section("COS").Key("COSSecretID").String()
	COSSecretKEY = file.Section("COS").Key("COSSecretKEY").String()
}
